/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package praticav.dao;

import praticav.model.Usuarios;
import praticav.util.HibernateUtil;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

/**
 * @author Katiane
 */
public class UsuariosDAO {
    public UsuariosDAO() {
  sessao = HibernateUtil.getsession();
  }
    
  private Session sessao;
  
  public void inserir(Usuarios c) {
    Transaction t = sessao.beginTransaction();
    sessao.save(c);
    t.commit();
  }
  
  public void editar(Usuarios c) {
    Transaction t = sessao.beginTransaction();
    sessao.merge(c);
    t.commit();    
  }
  
  public void excluir(Usuarios c) {
    Transaction t = sessao.beginTransaction();
    sessao.delete(c);
    t.commit();
  }
  
  public List<Usuarios> listar() {
    Query qu = sessao.createQuery("from Usuarios"); 
    return qu.list();
  }
  
  public Usuarios buscar(String nome){
    Query qu = sessao.createSQLQuery("select * from usuarios usu where usunome = '"+nome+"'").addEntity("usu",Usuarios.class);;
    return (Usuarios) qu.uniqueResult();
  }

  public Usuarios buscar(int codigo){
    return (Usuarios) sessao.load(Usuarios.class, codigo);
  }   
}
